WeldDeployment{
  this.subDeploymentClassLoaders=new HashSet<ClassLoader>(subDeploymentClassLoaders);
  this.additionalBeanDeploymentArchive=new BeanDeploymentArchiveImpl(Collections.<String>emptySet(),BeansXml.EMPTY_BEANS_XML,module,getClass().getName() + ADDITIONAL_CLASSES_BDA_SUFFIX);
  this.extensions=new HashSet<Metadata<Extension>>(extensions);
  this.serviceRegistry=new SimpleServiceRegistry();
  this.beanDeploymentsByClassName=new HashMap<String,BeanDeploymentArchiveImpl>();
  this.module=module;
  this.serviceRegistry.add(ProxyServices.class,new ProxyServicesImpl(module));
  this.serviceRegistry.add(ResourceLoader.class,new WeldModuleResourceLoader(module));
  for (  BeanDeploymentArchiveImpl bda : beanDeploymentArchives) {
    bda.addBeanDeploymentArchive(additionalBeanDeploymentArchive);
      beanDeploymentsByClassName.put(className,bda);
}
getBeanDeploymentArchives{
  return Collections.unmodifiableSet(new HashSet<BeanDeploymentArchive>(beanDeploymentArchives));
}
getExtensions{
  return Collections.unmodifiableSet(extensions);
}
getServices{ }
loadBeanDeploymentArchive{
  if (beanDeploymentsByClassName.containsKey(beanClass.getName())) {
    return beanDeploymentsByClassName.get(beanClass.getName());
  additionalBeanDeploymentArchive.addBeanClass(beanClass);
  beanDeploymentsByClassName.put(beanClass.getName(),additionalBeanDeploymentArchive);
}
getAdditionalBeanDeploymentArchive{ }
getModule{ }
getSubDeploymentClassLoaders{
  return Collections.unmodifiableSet(subDeploymentClassLoaders);
}
